export default {
  // 这里配置的是和组件中的一样
  data() {
    return {
      money: 40000
      // 注意: 如果在公共代码中声明数据
      // 会以组件中的数据为准
      // 如果组件中没有声明此数据
      // 则会以mixin文件中的数据为准

      // 这个js文件可以当成一会要混入组件的内容
      // 怎么写?
      // 抛出一个对象,这个对象中写的属性 和 组件中的配置项,一摸一样
      // 理解:
      // 混入文件中的内容会混合到组件当中,不管是data,methods,computed...等
      // 结论:
      //      组件中没有的内容,以混入文件中的内容为准
      //      组件中有的内容,以组件中的内容内容为准
      //      注意:
      //          结论并不是所有的都适用,不适用于钩子函数
      //          当存在钩子函数的时候,会先执行 mixin 中的钩子,再执行组件中的钩子
      // 场景:
      //      当有多个组件有相同的代码的时候,使用 mixin 比较合适
    }
  },
  // 在mixin中使用钩子函数会先执行
  // 组件中的钩子函数也会被执行,
  // 所以,钩子函数不适用于在这使用
  mounted() {
    // console.log('我执行了-- mixin')
  },
  methods: {
    getMoney(money) {
      console.log('1111')
      this.money -= money
      this.$parent.money += money
    }
  }
}
